.TH std::ranges::take_while_view::end 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::ranges::take_while_view::end \- std::ranges::take_while_view::end

.SH Synopsis
   constexpr auto end() requires (!__SimpleView<V>);                  \fB(1)\fP \fI(since C++20)\fP
   constexpr auto end() const requires

       ranges::range<const V> &&                                      \fB(2)\fP \fI(since C++20)\fP

       std::indirect_unary_predicate<const Pred,
   ranges::iterator_t<const V>>;

   Returns a sentinel representing the end of the view.

   Let base_ denote the underlying view.

   1) Effectively returns /*sentinel*/<false>(ranges::end(base_),
   std::addressof(pred())).
   2) Effectively returns /*sentinel*/<true>(ranges::end(base_),
   std::addressof(pred())).

   Overload \fB(1)\fP does not participate in overload resolution if V is a simple view (that
   is, if V and const V are views with the same iterator and sentinel types).

.SH Parameters

   \fI(none)\fP

.SH Return value

   A sentinel representing the end of the view.

.SH Example

    This section is incomplete
    Reason: no example

   Defect reports

   The following behavior-changing defect reports were applied retroactively to
   previously published C++ standards.

      DR    Applied to              Behavior as published              Correct behavior
   LWG 3450 C++20      the const overload might return a sentinel      constrained
                       non-comparable to the iterator

.SH See also

   begin      returns an iterator to the beginning
   (C++20)    \fI(public member function)\fP
   operator== compares a sentinel with an iterator returned from take_while_view::begin
   (C++20)    \fI(function)\fP

.SH Category:
     * Todo no example
